package com.hk.commons.img;

import lombok.Data;
import lombok.experimental.Accessors;

import java.awt.*;
import java.awt.image.BufferedImage;
import java.util.Objects;

/**
 * 绘制图片
 *
 * @author Kevin
 */
@Data
@Accessors(chain = true)
public class ImageCell implements MergeCell {

    /**
     * 图片
     */
    private BufferedImage image;

    /**
     * 图片 X 轴距离
     */
    private int x;

    /**
     * 图片 Y 轴距离
     */
    private int y;

    /**
     * 图片 宽度
     */
    private Integer w;

    /**
     * 图片 高度
     */
    private Integer h;

    @Override
    public void draw(Graphics2D g2d) {
        var width = Objects.isNull(this.w) ? image.getWidth() : this.w;
        var height = Objects.isNull(this.h) ? image.getHeight() : this.h;
        g2d.drawImage(image, x, y, width, height, null);
    }
}
